/**
 * WASM 加密逻辑的纯 JS 实现
 * 原始 WASM 算法: result = var0 + (var1 / 3) + 16358
 * @param {number} page - 页码参数
 * @param {number} timestamp - 时间戳(秒级)
 * @returns {number} 加密结果
 */
function encrypt(page, timestamp) {
    // WASM 中的 i32.div_s 是有符号整数除法,对应 JS 的 Math.floor
    return page + Math.floor(timestamp / 3) + 16358;
}

function getEncryptedValue(page) {
    return new Promise((resolve, reject) => {
        try {
            // 获取当前时间戳(秒级)
            const timestamp = parseInt(Math.round((new Date()).getTime() / 1e3).toString());

            // 调用加密函数
            const encryptedValue = encrypt(page, timestamp);
            resolve(encryptedValue);
        } catch (err) {
            reject(err);
        }
    });
}

// 命令行调用: node 01.js 70
const page = parseInt(process.argv[2]) || 70;

getEncryptedValue(page).then(result => {
    console.log(result);
}).catch(err => {
    console.error('加密失败:', err);
});
